﻿package aidn.animation.utils 
{
	import flash.geom.Point;
	
	/**
	 * いろいろ
	 */
	public class Utils 
	{
		/**
		 * 乱数を生成します。
		 * @param	min		最小値。
		 * @param	max		最大値。
		 * @return			乱数。
		 */
		public static function rand ( min :Number = 0, max :Number = 1 ) :Number
		{
			return Math.random() * ( max - min ) + min;
		}
		/**
		 * 乱数(整数)を生成します。
		 * @param	min		最小値。
		 * @param	max		最大値。
		 * @return			乱数。
		 */
		public static function randInt ( min :int = 0, max :int = 1 ) :int
		{
			return Math.round( rand(min, max) );
		}
		
		/**
		 * 数値配列をポイント配列に変換します。
		 * @param	pts
		 */
		public static function numToPts ( pts :/*Number*/Array ) :/*Point*/Array
		{
			var arr :Array = []; 
			var len :int = pts.length;
			
			for ( var i :int = 0; i < len; i += 2 )	arr.push( new Point( pts[i], pts[i + 1] ) );
			
			return arr;
		}
		
		public static function checkHiragana ( str :String ) :Boolean
		{
			return RegExp(/[ぁ-ん]/).test(str);
		}
		public static function checkKatakana ( str :String ) :Boolean
		{
			return RegExp(/[ァ-ン]/).test(str);
		}
		
	}
	
}